1. Field of the Invention
The present invention relates to a method and apparatus for controlling output, in which printing process is controlled in response to communication data received from an information processing apparatus via a predetermined communication medium and also relates to a storage medium for storing a program that is readable by a computer.
2. Description of the Related Art
In image processing apparatuses (such as printers), one communication protocol is today used in one communication interface for communication with a host computer, and control data and print data are exchanged through the same communication interface on the same protocol.
Since print data and control data input based on the same communication protocol are sequentially processed in one communication interface, the control data is executed against the print data that comes in succession to the control data. Print job information is referenced when a print page is created, and an output page is not associated with job information.
Since the control data and print data are exchanged in the same communication, no control command is received from the host computer when the communication status between a printer and a host computer is transitioned to an offline state. Control command performed in the offline state is executed but not by a control command from the host computer.
A macro function execution after the communication status between the printer and the computer is transitioned to an offline state is usually executed after a transition to the offline and the communication status remains there.
Even when the host computer is capable of controlling the printer by a command, the printer remains unable to notify the host computer of a status or the like because of disabled data communication when a process that has to be carried with the printer at the offline state is attempted.
Even if a command of status return request is issued during the online state, the printer remains unable to notify the host computer of a status or the like because of disabled data communication when a process that has to be carried with the printer at the offline state is attempted.
Since the communication control between the host computer and printer is organized as described above in the conventional printing system, only a single data communication is permitted between the host computer and printer, and it is impossible to receive both control data and print data in parallel and in an interruptible manner. When the printer is operated using its operation panel, the printer is unable to process control data (command) though the control data can be received together with the print data in parallel and in an interruptible manner.
When the system shifts to the offline state at the occurrence of a print error, the offline state is applied to the control data, and no control is permitted during the offline state.
In the communication with the host computer, the print data and control data are received using the single protocol and are processed sequentially in the order of their reception. Analysis and processing of the control data must wait until the end of analysis and processing of the print data. For example, even when the printer receives control data that requires the printer to report its state to the host computer, the printer remains unable to respond until the end of analysis and processing of the print data.
Since an intermediate output page created by an input print job has no information that is associated with the area of one job, input jobs cannot be selectively controlled. Initial information of the apparatus at the start of a job is not stored; thus, when a particular input job is selectively canceled, the printer setting cannot be restored to the setting during the start of the job.
When an offline command from the host computer causes the printer to transition to the offline state, no further data communication is carried out, and the host computer cannot request a process step at the offline state.
In the macro function execution after the transition to the offline, some of control processes offline require one-time execution only, such as a reset process. These control commands are executed at each offline. For this reason, these commands need deleting each time a macro is executed after the offline.
After the printer transitions to the offline state in response to a command from the host computer, a control command from the host computer cannot get the printer back to the online. The operation panel needs to be operated to revert back to the online state, and this extra operation inconveniences a user.
When the host computer controls the printer by a control command, a process that needs to be carried out during the offline state cannot be executed with the data communication disabled. An on-screen operation panel, if available, on the host computer corresponding to the actual printer operation panel does not accept an input related to a process that needs to be carried out offline.
The present invention has been developed to resolve the above problems. A first object of the present invention is to provide a method and apparatus which process both print data and control data contained in communication data in parallel and in an interruptible manner by receiving the communication data based on at least two protocols. A second object of the present invention is to provide a method and apparatus which select and process already received print job data by a subsequent control command by linking and then storing both job information and output page data contained in the print job data and printer setting, and which, after the process, revert back to a printer state prior to the start of the print job. A third object of the present invention is to provide a method and apparatus which performs a desired process after transitioning to an offline state in response to an offline command from a host computer. A fourth object of the present invention is to provide a method and apparatus which restrict the number of executions of a macro executed at the transition to the offline state. A fifth object of the present invention is to provide a method and apparatus which are capable of returning back to an online state after executing a predetermined control command subsequent to the transition to the offline state in response to an offline command from the host computer and to provide a storage medium for storing a program a computer can read.
According to a first aspect of the present invention, the printing control device comprises communication control means which performs a plurality of data communications with an information processing apparatus via a predetermined communication medium by using at least two protocols in accordance with a predetermined hierarchical level; sorting means for sorting, according the type of data, communication data that is received on a protocol by protocol basis of the protocols the communication control means uses in communication with the information processing apparatus; and a plurality of data processing means for performing different data processings to the different data sorted by the sorting means.
According to a second aspect of the present invention, the sorting means sorts the communication data into control data and print data.
According to a third aspect of the present invention, one of the data processing means performs a predetermined data analysis process to the print data sorted from the communication data by the sorting means to create a bit map a printing module can print out.
According to a fourth aspect of the present invention, one of the data processing means analyzes the control data sorted from the communication data by the sorting means to execute a predetermined control command.
According to a fifth aspect of the present invention, the hierarchical level of the protocol is a transport layer or higher.
According to a sixth aspect of the present invention, the communication control means performs a plurality of communications in parallel or in an interruptible manner using at least two protocols in accordance with the predetermined hierarchical level.
According to a seventh aspect of the present invention, the printing control device comprises communication control means which performs a plurality of data communications with an information processing apparatus via a predetermined communication medium by using at least two protocols in accordance with a predetermined hierarchical level; sorting means for sorting, into print data and control data, communication data that is received on a protocol by protocol basis of the protocols the communication control means uses in communication with the information processing apparatus; first analyzing means for analyzing, on a per job basis, the print data sorted by the sorting means to create job management information used to determine the area of each job and output page data for each job; memory means for linking and storing the job management information and the output page data based on the job management information; and second analyzing means for analyzing the control data sorted by the sorting means to check required job information against the job management information stored in the memory means and to select a job to be processed, wherein a series of the output page data which the first analyzing means retrieves by referencing the job management information of the job to be processed are processed according to control data, based on the job to be processed selected by the second analyzing means.
According to an eighth aspect of the present invention, the memory means stores the initial state of a printing apparatus at the job start of each piece of job management information.
According to a ninth aspect of the present invention, after a series of the output page data which the first analyzing means retrieves by referencing the job management information of the job to be processed are processed according to control data, based on the job to be processed selected by the second analyzing means, the status of the printing apparatus is recovered to the initial state of the printing apparatus at the job start of each piece of job management information stored in the memory means.
According to a tenth aspect of the present invention, the control data is a delete command.
According to an eleventh aspect of the present invention, the printing control device communicating with an information processing apparatus via a predetermined communication medium, comprises macro memory means for storing a plurality of macros to be executed, when a communication status with a information processing apparatus is transitioned to an offline state in response to a control command received from the information processing apparatus; and offline macro means for executing one of the macros stored in the macro memory means specified, when the communication status is transitioned to the offline state.
According to a twelfth aspect of the present invention, the printing control device comprises state hold means for holding an online transition flag for transitioning to an online state, after the communication status with the information processing apparatus is transitioned to the offline state subsequent to the execution of the macro by the macro means based on the control command from the information processing apparatus; and automatic online transition means for returning the communication status with the information processing apparatus to the online state based on the state of the online transition flag stored in the state hold means.
According to a thirteenth aspect of the present invention, the printing control device comprises macro effective area memory means for storing an effective area within which the macro is re-executed; effective area determining means for determining whether the area corresponding to the macro executed by the offline macro means is the effective area; and effective macro flag memory means for storing an effective flag indicating that the macro which the offline macro means executes based on the determination result of the effective area determining means is an effective macro to be re-executed, wherein the offline macro means restricts the re-execution of the macro based on the effective flag stored in the effective macro flag memory means.
According to a fourteenth aspect of the present invention, the printing control device, which communicates with an information processing apparatus via a predetermined communication medium, comprises analyzing means for analyzing the type of a control command received from the information processing apparatus to determine whether the control command is a command to be executed after transitioning to an offline state; offline transition means for executing the command to be executed after transitioning to the offline state, after the communication status with the information processing apparatus is transitioned to the offline state based on the determination result of the analyzing means; and return-to-online means for returning the communication status with the information processing apparatus to an online state after the offline transition means executes the command to be executed after transitioning to the offline state.
According to a fifteenth aspect of the present invention, the printing control method, which controls printing process based on communication data received from an information processing apparatus via a predetermined communication medium, comprises the step of sorting, into different types of data, communication data that is received on a protocol by protocol basis, wherein the communication data is received using at least two protocols in accordance with a predetermined hierarchical level; and the step of performing a plurality of different data processings to the different data sorted.
According to a sixteenth aspect of the present invention, the storage medium, which stores a program that is read by a computer which controls printing process based on communication data received from an information processing apparatus via a predetermined communication medium, stores a program comprising the step of sorting, into different types of data, communication data that is received on a protocol by protocol basis, wherein the communication data is received using at least two protocols in accordance with a predetermined hierarchical level; and the step of performing a plurality of different data processings to the different data sorted.
According to a seventeenth aspect of the present invention, the printing control method which controls printing process based on communication data received from an information processing apparatus via a predetermined communication medium, comprises the step of sorting, into different types of data, communication data that is received on a protocol by protocol basis, wherein the communication data is received using at least two protocols in accordance with a predetermined hierarchical level; the step of registering in which sorted print data is analyzed on a per job basis to link and store, in a memory, job management information for determining the area of each job and output page data for each job; the step of selecting a job to be processed by analyzing control data sorted by the sorting means to check required job information against the job management information stored in the memory and to select a job to be processed; and the step of data processing in which a series of the output page data which are retrieved by referencing the job management information of the job to be processed are processed according to control data, based on the selected job to be processed.
According to an eighteenth aspect of the present invention, the storage medium, which stores a program that is read by a computer that controls printing process based on communication data received from an information processing apparatus via a predetermined communication medium, stores a program comprising the step of sorting, into different types of data, communication data that is received on a protocol by protocol basis, wherein the communication data is received using at least two protocols in accordance with a predetermined hierarchical level; the step of registering in which sorted print data is analyzed on a per job basis to link and store, in a memory, job management information for determining the area of each job and output page data for each job; the step of selecting a job to be processed by analyzing control data sorted by the sorting means to check required job information against the job management information stored in the memory and to select a job to be processed; and the step of data processing in which a series of the output page data which are retrieved by referencing the job management information of the job to be processed are processed according to control data based on the selected job to be processed.
According to a nineteenth aspect of the present invention, the printing control method, which controls printing process based on communication data received from an information processing apparatus via a predetermined communication medium, comprises the step of transitioning to an offline state the communication status with the information processing apparatus in response to a control command received from the information processing apparatus; the step of macro executing in which an effective macro is retrieved and executed after transitioniong to the offline state; the step of state holding an online transition flag for transitioning to an online state after the communication status with the information processing apparatus is transitioned to the offline state; and the step of transitioning the communication status with the information processing apparatus to the online state based on the state of the online transition flag stored.
According to a twentieth aspect of the present invention, the storage medium which stores a program that is read by a computer that controls printing process based on communication data received from an information processing apparatus via a predetermined communication medium, stores a program comprising the step of transitioning to an offline state the communication status with the information processing apparatus in response to a control command received from the information processing apparatus; the step of macro executing in which an effective macro is retrieved and executed after transitioniong to the offline state; the step of state holding an online transition flag for transitioning to an online state after the communication status with the information processing apparatus is transitioned to the offline state; and the step of transitioning the communication status with the information processing apparatus to the online state based on the state of the online transition flag stored.
According to a twenty-first aspect of the present invention, the printing control method, which controls printing process based on communication data received from an information processing apparatus via a predetermined communication medium, comprises the step of analyzing the type of a control command received from the information processing apparatus to determine whether the control command is a command to be executed after transitioning to an offline state; the step of transitioning in which the command to be executed after transitioning to the offline state is executed after the communication status with the information processing apparatus is transitioned to the offline state based on the determination result; and the step of return to the online state in which the communication status with the information processing apparatus is transitioned to an online state after the command to be executed after transitioning to the offline state is executed.
According to a twenty-second aspect of the present invention, the storage medium, which stores a program that is read by a computer that controls printing process based on communication data received from an information processing apparatus via a predetermined communication medium, stores a program comprising the step of analyzing the type of a control command received from the information processing apparatus to determine whether the control command is a command to be executed after transitioning to an offline state; the step of transitioning in which the command to be executed after transitioning to the offline state is executed after the communication status with the information processing apparatus is transitioned to the offline state based on the determination result; and the step of return to the online state in which the communication status with the information processing apparatus is transitioned to an online state after the command to be executed after transitioning to the offline state is executed.